package com.erb.service.zwj;

import com.erb.entity.IntegralGoods;

import java.util.List;

public interface IIntegralGoodsService {
	/**
	 * 查询除商品详细外的所有字段
	 *
	 * @return
	 */
	List<IntegralGoods> findAllGoodsForList();

	/**
	 * ID查询商品信息
	 *
	 * @param id
	 * @return
	 */
	IntegralGoods findGoodsById(Integer id);

	/**
	 * 保存商品
	 *
	 * @param integralGoods
	 * @return
	 */
	boolean save(IntegralGoods integralGoods);

	/**
	 * 修改商品
	 *
	 * @param integralGoods
	 * @return
	 */
	boolean modify(IntegralGoods integralGoods);

	/**
	 * ID删除商品
	 *
	 * @param goodsId
	 * @return
	 */
	boolean remove(Integer goodsId);

	/**
	 * 查询所有上架的商品
	 *
	 * @return
	 */
	List<IntegralGoods> findGoodsForListOfPutaway();

	/**
	 * 商品库存减少
	 *
	 * @param id
	 * @param decr
	 * @return true：数据库数据发生改变；false：数据库数据没有发生改变
	 */
	boolean decrGoodsStock(int id, int decr);

	/**
	 * 更改商品状态，上下架
	 *
	 * @param id
	 * @param state
	 * @return
	 */
	boolean modifyGoodsStateById(int id, boolean state);
}
